package pers.xukai.fullMark.entity.po;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.hibernate.annotations.GenericGenerator;
import pers.xukai.common.constant.GlobalConstant;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import java.util.Date;

/**
 * @author 殷绪凯
 * @datetime 2022年 11月 29日 16:34
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Entity(name = "todo")
public class Todo {

    /**
     * 主键id
     */
    @Id
    @GeneratedValue(generator = GlobalConstant.ID_GENERATOR_NANO)
    @GenericGenerator(name = GlobalConstant.ID_GENERATOR_NANO, strategy = GlobalConstant.ID_GENERATOR_NANO_PATH)
    private String todoId;

    /**
     * 标题
     */
    @Column(name = "title")
    private String title;

    /**
     * 内容
     */
    @Column(name = "content")
    private String content;

    /**
     * 用户ID
     */
    @Column(name = "user_id")
    private String userId;

    /**
     * 开始时间
     */
    @Column(name = "start_time")
    private Date startTime;

    /**
     * 结束时间
     */
    @Column(name = "end_time")
    private Date endTime;

    /**
     * 完成时间
     */
    @Column(name = "finish_time")
    private Date finishTime;

    /**
     * 提醒时间
     */
    @Column(name = "notice_time")
    private Date noticeTime;

    /**
     * 是否发送提醒消息
     */
    @Column(name = "send_msg")
    private boolean sendMsg;

    /**
     * 完成标记
     */
    @Column(name = "finished")
    private boolean finished;

    /**
     * 是否删除
     */
    @Column(name = "deleted")
    private boolean deleted;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 修改时间
     */
    @Column(name = "update_time")
    private Date updateTime;

}
